*Whether tar-mode should play fast and loose with sub-file datestamps;
if this is true, then editing and saving a tar file entry back into its
tar file will update its datestamp. If false, the datestamp is unchanged.
You may or may not want this - it is good in that you can tell when a file
in a tar archive has been changed, but it is bad for the same reason that
editing a file in the tar archive at all is bad - the changed version of
the file never exists on disk.
This does not work in Emacs 18, because there's no way to get the current
time as an integer - if this var is true, then editing a file sets its date
to midnight, Jan 1 1970 GMT, which happens to be what 0 encodes.
I have written some C code to fix this deficiency which is included in
Lucid Emacs, and may be included in FSF's version 19. Tar-mode will take
advantage of this code if it is present.")
(defvar tar-view-kill-buffer t "\
*Whether to kill the buffer when view-mode exits. The standard view-mode
requires this, but other versions (notably less.el) which don't use
recursive edits do not.")
(fset 'tar-setf '(macro . #[(form val) "└ ┬├!¡ü\"ë9½ç┼E¬╛:¼å╟╚ \"¬┤@╔=½î╩A@╦8F¬ó@╠=½ë═A@E¬ô@╬=½ë╧A@E¬ä╟╨ \")ç" [macroexpand form boundp byte-compile-macro-environment mform setq val error "can't setf %s" aref aset 2 car setcar cdr setcdr "don't know how to setf %s"] 5 "\
A mind-numbingly simple implementation of setf."]))
(fset 'tar-dolist '(macro . #[(control &rest body) "@A@AA@─┼\nDC╞┼─╟DC╚ ╩┼╦┼DEC\"BBE F+ç" [control val init var let _dolist_iterator_ while (car _dolist_iterator_) append body setq cdr] 12 "\
(fset 'tar-dotimes '(macro . #[(control &rest body) "@A@AA@─┼\nD╞DD╟╚┼E╔\n╦╠DEC\"BB F+ç" [control val n var let _dotimes_end_ 0 while < append body setq 1+] 10 "\
(fset 'tar-current-descriptor #[(&optional noerror) "└eè┴yê`)\"\n8«ç?¡â─┼!ç" [count-lines 0 tar-parse-info noerror error "This line does not describe a tar-file entry."] 3 "\
Returns the tar-descriptor of the current line, or signals an error."])
(fset 'tar-extract #[(&optional other-window-p) "┴=├ ëAë╞H╚H ╩H@═\\\\ë \\½▓╨╤╥=½â╙¬Ñ╘=½â╒¬£╓=½â╫¬ô╪=½â┘¬è┌=½â█¬ü▄\"ê ╞U½ä╨▌!êp▀! ß▀Γ !πQ$%«ü\n&τ(Θ *τ+*½¬(¼ª*@qêΓ*@!¼Æ∞φ!½ì-=½ç*@(¬Z*Aë*¼Vqê(äzε !(∩+≡Ä~êè(qê±#ê╞bê≥!ê≤τë\"ê≥τ!ê⌠⌡!ê⌠φ!ê⌠÷!ê⌠≈!ê⌠°!ê5-$7686;½à6C66@τ9ë:;½«√ⁿ:\"½º:╞²öSO:²òTτOP■:²ö²òO!@ 7PD6ABB6¬Äü@ üA 7PDD6*üB ²!ê&%üC τ!ê)qê)\n½¥D½ôüE (!ê+¡ƒüF (!¬ùüE ¬æ½êüG (!¬åüH (!.ç" [other-window-p view view-p tar-current-descriptor descriptor tokens 0 name 4 size 7 link-p tar-header-offset -1 start end error "This is a %s, not a real file." 5 "directory" 20 "tar directory header" 29 "multivolume-continuation" 35 "sparse entry" 38 "volume header" "link" "This is a zero-length file." tar-buffer file-name-nondirectory bufname " (in " buffer-file-name ")" bufid buffer-read-only read-only-p nil buffer buffer-list buffers just-created boundp superior-tar-descriptor generate-new-buffer t ((narrow-to-region 1 tar-header-offset)) insert-buffer-substring set-visited-file-name after-find-file make-local-variable superior-tar-buffer mode-line-buffer-identification tar-subfile-buffer-id subfile-orig-mlbid n ms string-match "%\\([0-9]+\\)b\\'" 1 read-from-string "%b" "Emacs: " 17 tar-subfile-mode set-buffer-modified-p tar-view-kill-buffer view-buffer kill-buffer switch-to-buffer-other-window switch-to-buffer] 6 "\
*In tar-mode, extract this entry of the tar file into its own buffer." nil])
*Change the user-id associated with this entry in the tar file.
If this tar file was written by GNU tar, then you will be able to edit
the user id as a string; otherwise, you must edit it as a number.
You can force editing as a number by calling this with a prefix arg.
This does not modify the disk image; you must save the tar file itself
for this to be permanent." (byte-code "└ A\n¼à ├H¼ö─╞╟╚╔ ╩H\"\"뺽r)¬å╦╠ ═H\")Cç" [tar-current-descriptor tokens current-prefix-arg 9 nil n read-minibuffer "New UID number: " format "%s" 2 read-string "New UID string: " 10] 6)])
*Change the group-id associated with this entry in the tar file.
If this tar file was written by GNU tar, then you will be able to edit
the group id as a string; otherwise, you must edit it as a number.
You can force editing as a number by calling this with a prefix arg.
This does not modify the disk image; you must save the tar file itself
for this to be permanent." (byte-code "└ A\n¼à ├H¼ö─╞╟╚╔ ╩H\"\"뺽r)¬å╦╠ ═H\")Cç" [tar-current-descriptor tokens current-prefix-arg 9 nil n read-minibuffer "New GID number: " format "%s" 3 read-string "New GID string: " 11] 6)])
In tar subfile mode, write this buffer back into its parent tar-file buffer.
This doesn't write anything to disk - you must save the parent tar-file buffer
to make your changes permanent." nil])
(fset 'tar-subfile-save-buffer-internal #[nil "└┴!½â ¼ä┬├!ê─ !¼ä┬┼!ê└╞!½ä¼ä┬╟!ê└╚!½ê½ä┬╔!ê└╩!½ê\n½ä┬╦!ê└╠!½ê½ä┬═!ê└╬!½ê½ä┬╧!êèp╨ qêA@╓H╪H┌ë█\\▄\"▌\">ë A! ¼ä┬Γ!êπÄè~ê$σ\\\\ë&┌ë█\\▄\"▌\"\\'&'|ê&bêΦ!ê┌ë█\\▄\"▌\")&\\bêΩ)Z╓\"cê╪Iê)Z+!,,½ò,@ë-ë@+\\áê,A,)¬g*&εZë/0\\bê``±\\|ê≥≤\"cê⌠cê5½π/6\\bê``±\\|ê7½┬° ë9@:9A;ⁿ9Iê²┌■: \"ü@ \";\";┌:üA \":≥üB :\"cê≥üC ;\"cê+¬É≥üD ╓\"cêⁿ╓ëBIêüE /&{!F/G\\bê``üH \\|ê≥üI F\"cê╓cê⌠cêüJ FIê*G GZKüL bêüM K!ê╓yê`üN $üO ôPQüL yêQ`|êüR üS üT \"üU \"êüV P!$.üW ê. üX üT !êqêüX üO !êüY üZ ─ !\",ç" [boundp superior-tar-buffer error "this buffer has no superior tar file buffer." buffer-name "the superior tar file's buffer has been killed." superior-tar-descriptor "this buffer doesn't have an index into its superior tar file!" buffer-save-encrypted "Don't know how to encrypt back into a tar file." buffer-save-compacted "Don't know how to compact back into a tar file." buffer-save-compressed "Don't know how to compress back into a tar file." buffer-save-gzipped "Don't know how to gzip back into a tar file." buffer-size descriptor subfile-size subfile tokens start 0 name 4 size ash 511 -9 9 size-pad tar-parse-info head following-descs "Can't find this tar file entry in its parent tar file!" ((narrow-to-region 1 tar-header-offset)) tar-header-offset -1 data-start data-end insert-buffer subfile-size-pad make-string difference _dolist_iterator_ desc 512 header-start tar-size-offset 12 format "%11o" 32 tar-update-datestamp tar-time-offset tar-can-print-dates current-time-seconds now top bot 5 logior logand 3 16 -2 "%5o" "%06o " "%11o " checksum-tar-header-block chk tar-chk-offset 8 "%6o" 6 position 1 next-line make-marker nil m p insert-before-markers summarize-tar-header-block t "\n" marker-position tar-pad-to-blocksize set-buffer-modified-p message "saved into tar-buffer \"%s\" - remember to save that buffer!"] 6])